iT邦幫忙

2023 iThome 鐵人賽

DAY 30
0
Kotlin

new to Kotlin系列 第 30

Day 30 共常式

  • 分享至 

  • xImage
  •  

昨天以及前天我們介紹了幾個非同步程式開發技巧

  • 執行緒(Threading)
  • 回呼(Callbacks)
  • futures以及promises

但在Kotlin中處理非同步程式則是使用共常式(Coroutines)
共常式,概念上即可被暫停的計算
換句話說函式可在某個執行位置被暫停並可在稍後回復

如以下這個例子,preparePost被稱為可停止的函式(suspendable function)
正如字面意思,當執行時會先暫停,並在一段時間後回復暫停時的狀態

fun postItem(item: Item) {
    launch {
        val token = preparePost()
        val post = submitPost(token, item)
        processPost(post)
    }
}

suspend fun preparePost(): Token {
    return suspendCoroutine { /* ... */ }
}

上一篇
Day 29 非同步程式技巧(續)
系列文
new to Kotlin30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言